package Modelo;

import java.util.ArrayList;
import Modelo.Jugador;
import java.io.*;
import java.lang.IllegalStateException;
import java.util.NoSuchElementException;
import java.util.Scanner;

public class Equipo {

	protected String codigo;
	protected String nombre;
	protected int anoFund;
	protected String ciudad;
	protected String estadio;
	protected int jj,jg,jp,jdif;
	protected int posicion;
	private ArrayList<Jugador> jugadores = new ArrayList<Jugador>();
	protected int mayorC;
    protected String auxNombre;
 
//-----------------------------------------Constructor sin parametro-------------------------------------
	public Equipo() {
		
		super();
	}


	public ArrayList<Jugador> getJugadores() {
		return jugadores;
	}
	public void setJugadores(ArrayList<Jugador> jugadores) {
		this.jugadores = jugadores;
	}


	public Equipo(String codigo, String nombre, int anoFund, String ciudad,
			String estadio, int jj, int jg, int jp,int jdif,
			ArrayList<Jugador> jugadores) {
		super();
		this.codigo = codigo;
		this.nombre = nombre;
		this.anoFund = anoFund;
		this.ciudad = ciudad;
		this.estadio = estadio;
		this.jj = jj;
		this.jg = jg;
		this.jp = jp;
		this.jdif= jdif;
		this.jugadores = jugadores;
		this.mayorC=0;
		this.auxNombre="";
	}


	public void IncluirJugador(Jugador jugador)
	{
		this.jugadores.add(jugador);
	}
	
	public int cantJugadores(){
		return this.jugadores.size();
		
	}
	
	public int buscarJugadores(String cedula)
	{
	  int i=0;
		for(i=0; i<cantJugadores();i++)
			if (jugadores.get(i).getCedula().equalsIgnoreCase(cedula))
				return i;
				return -1;
				
	}
   
	public Jugador getJugador(int i)
	{
		return this.jugadores.get(i);
		
	}
	
	public void MayorCarrerasJugador()
	{
		mayorC=0;
		
	
		for(int i=0; i<cantJugadores();i++)
		{
			if(jugadores.get(i).getCarrerasImp()>mayorC){
			mayorC=jugadores.get(i).getCarrerasImp();
		    auxNombre=jugadores.get(i).getNombre();
		}
	}
}
	

//Setter y Getter
	
	
	
	public String getCodigo() {
		return codigo;
	}



	public int getMayorC() {
		return mayorC;
	}


	public void setMayorC(int mayorC) {
		this.mayorC = mayorC;
	}


	public String getAuxNombre() {
		return auxNombre;
	}


	public void setAuxNombre(String auxNombre) {
		this.auxNombre = auxNombre;
	}


	public int getPosicion() {
		return posicion;
	}


	public void setPosicion(int posicion) {
		this.posicion = posicion;
	}


	public int getJdif() {
		return jdif;
	}


	public void setJdif(int jdif) {
		this.jdif = jdif;
	}


	public void setCodigo(String codigo) {
		this.codigo = codigo;
	}


	public String getNombre() {
		return nombre;
	}


	public void setNombre(String nombre) {
		this.nombre = nombre;
	}


	public int getAnoFund() {
		return anoFund;
	}
	



	public void setAnoFund(int anoFund) {
		this.anoFund = anoFund;
	}


	public String getCiudad() {
		return ciudad;
	}



	public void setCiudad(String ciudad) {
		this.ciudad = ciudad;
	}



	public String getEstadio() {
		return estadio;
	}


	public void setEstadio(String estadio) {
		this.estadio = estadio;
	}


	public int getJj() {
		return jj;
	}



	public void setJj(int jj) {
		this.jj = jj;
	}


	public int getJg() {
		return jg;
	}

	public void setJg(int jg) {
		this.jg = jg;
	}


	public int getJp() {
		return jp;
	}


	public void setJp(int jp) {
		this.jp = jp;
	}
	
	
  private Scanner entrada;
		

	public void abrirArchivo(String nombrearchivo)
	{
	try{
			entrada= new Scanner(new File(nombrearchivo));
			
		}catch (FileNotFoundException fileNotFoundException)
		{
			System.err.println("Error al abrir el archivo");
			System.exit(1);
		}
		
	}
	
	public void leerRegistos()
	{
		Jugador jugador= null;

		
	try{

			while(entrada.hasNext())
			{
				jugador = new Jugador();

				jugador.setCedula(entrada.next());
				jugador.setNombre(entrada.next());
				jugador.setApellido(entrada.next());
				jugador.setFechaNac(entrada.next());
				jugador.setDireccion(entrada.next());
				jugador.setTelefono(entrada.next());
				jugador.setEdad(entrada.nextInt());
				jugador.setPosicion(entrada.next());
				jugador.setCarrerasImp(0);
				jugador.setCuadrangulares(0);
			
				this.jugadores.add(jugador);
	
			}
			
		}catch(NoSuchElementException elementException)
		{
			System.err.println("El archivo no esta bien formado");
			entrada.close();
			System.exit(1);

		}
		catch(IllegalStateException stateException)
		{		System.err.println("Error al leer el archivo");
			System.exit(1);

		}
	}
	
	public void cerrarArchivo()
	{
		if(entrada !=null)
			entrada.close();
	}
	
	
	
}
